package com.eshipenet.shipnet.edgebox;

import org.apache.ignite.cache.query.annotations.QuerySqlField;

import java.sql.Timestamp;

public class EdgeBoxState {


    @QuerySqlField(index = true)
    private String id;

    @QuerySqlField(index = true)
    private String edgeBoxId;

    @QuerySqlField(index = true)
    private Timestamp createdAt;

    @QuerySqlField(index = true)
    private Timestamp updatedAt;


    private IsOnLine isOnLine;
    private IsCmdChannelOn isCmdChannelOn;
    private IsDataChannelOn isDataChannelOn;

    @QuerySqlField(index = true)
    private Timestamp onlineAt;

    @QuerySqlField(index = true)
    private Timestamp offlineAt;

    @QuerySqlField(index = true)
    private String data;


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getEdgeBoxId() {
        return edgeBoxId;
    }

    public void setEdgeBoxId(String edgeBoxId) {
        this.edgeBoxId = edgeBoxId;
    }

    public Timestamp getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(Timestamp createdAt) {
        this.createdAt = createdAt;
    }

    public Timestamp getUpdatedAt() {
        return updatedAt;
    }

    public void setUpdatedAt(Timestamp updatedAt) {
        this.updatedAt = updatedAt;
    }

    public IsOnLine getIsOnLine() {
        return isOnLine;
    }

    public void setIsOnLine(IsOnLine isOnLine) {
        this.isOnLine = isOnLine;
    }

    public IsCmdChannelOn getIsCmdChannelOn() {
        return isCmdChannelOn;
    }

    public void setIsCmdChannelOn(IsCmdChannelOn isCmdChannelOn) {
        this.isCmdChannelOn = isCmdChannelOn;
    }

    public IsDataChannelOn getIsDataChannelOn() {
        return isDataChannelOn;
    }

    public void setIsDataChannelOn(IsDataChannelOn isDataChannelOn) {
        this.isDataChannelOn = isDataChannelOn;
    }

    public Timestamp getOnlineAt() {
        return onlineAt;
    }

    public void setOnlineAt(Timestamp onlineAt) {
        this.onlineAt = onlineAt;
    }

    public Timestamp getOfflineAt() {
        return offlineAt;
    }

    public void setOfflineAt(Timestamp offlineAt) {
        this.offlineAt = offlineAt;
    }

    public String getData() {
        return data;
    }

    public void setData(String data) {
        this.data = data;
    }


    public EdgeBoxState(String id, String edgeBoxId, Timestamp createdAt, Timestamp updatedAt, IsOnLine isOnLine, IsCmdChannelOn isCmdChannelOn, IsDataChannelOn isDataChannelOn, Timestamp onlineAt, Timestamp offlineAt, String data) {
        this.id = id;
        this.edgeBoxId = edgeBoxId;
        this.createdAt = createdAt;
        this.updatedAt = updatedAt;
        this.isOnLine = isOnLine;
        this.isCmdChannelOn = isCmdChannelOn;
        this.isDataChannelOn = isDataChannelOn;
        this.onlineAt = onlineAt;
        this.offlineAt = offlineAt;
        this.data = data;
    }


    public EdgeBoxState() {
    }

    @Override
    public String toString() {
        return "EdgeBoxState{" +
                "id='" + id + '\'' +
                ", edgeBoxId='" + edgeBoxId + '\'' +
                ", createdAt=" + createdAt +
                ", updatedAt=" + updatedAt +
                ", isOnLine=" + isOnLine +
                ", isCmdChannelOn=" + isCmdChannelOn +
                ", isDataChannelOn=" + isDataChannelOn +
                ", onlineAt=" + onlineAt +
                ", offlineAt=" + offlineAt +
                ", data='" + data + '\'' +
                '}';
    }

    public static void main(String[] args) {


    }
}
